package ar.com.tallerdos.smartdinner.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import android.annotation.SuppressLint;
import ar.com.tallerdos.smartdinner.model.Pedido.PedidoEstado;

public class PedidoActualizacionData {

	private Integer pedido_id;
    private Integer id;
    private PedidoEstado estado;
    
    private String encargado;
    private String comenzado;
    private String terminado;
    private String entregado;
    private String cancelado;
    
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public PedidoEstado getEstado() {
        return estado;
    }
    public void setEstado(PedidoEstado estado) {
        this.estado = estado;
    }
    public String getEncargado() {
        return encargado;
    }
    public void setEncargado(String encargado) {
        this.encargado = encargado;
    }
    public String getComenzado() {
        return comenzado;
    }
    public void setComenzado(String comenzado) {
        this.comenzado = comenzado;
    }
    public String getEntregado() {
        return entregado;
    }
    public void setEntregado(String entregado) {
        this.entregado = entregado;
    }
    public String getTerminado() {
        return terminado;
    }
    public void setTerminado(String terminado) {
        this.terminado = terminado;
    }
    
    
    public String getCancelado() {
        return cancelado;
    }
    public void setCancelado(String cancelado) {
        this.cancelado = cancelado;
    }
    @SuppressLint("SimpleDateFormat")
    public Date getMayorFecha() {
	SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");	
	List<Date> fechas = new ArrayList<Date>();
    	try {
    	    if (PedidoEstado.Cancelado.equals(this.estado)) {
    		fechas.add(sdf.parse(this.cancelado));
	    } if (PedidoEstado.Entregado.equals(this.estado)) {
    		fechas.add(sdf.parse(this.entregado));
    	    } if (PedidoEstado.Terminado.equals(this.estado)) {
    		fechas.add(sdf.parse(this.terminado));
    	    } if (PedidoEstado.Comenzado.equals(this.estado)) {
    		fechas.add(sdf.parse(this.comenzado));
    	    } if (PedidoEstado.Pendiente.equals(this.estado)) {
    		fechas.add(sdf.parse(this.encargado));
    	    }
	} catch (ParseException e) {
	    e.printStackTrace();
	}
    	
	return DateUtil.getMayorFecha(fechas);
	
    }
    
    public Integer getCodigo(){
    	return pedido_id;
    }
    
    public void setCodigo(Integer codigo){
    	this.pedido_id = codigo;
    }
    
}
